/*
 * Resource.h
 *
 *  Created on: May 11, 2012
 *      Author: mklingen
 */

#ifndef RESOURCE_H
#define RESOURCE_H

#include <string>

namespace kling
{

    // Class which abstracts asset stoarage.
    class Resource
    {
        public:
            Resource(std::string name);
            virtual ~Resource();

            // Returns whether or not the resource has been loaded into memory.
            inline bool IsInitialized() { return m_isInitialized; }

            // Loads the resource into memory.
            virtual bool Initialize() { m_isInitialized = true; return true; }

        private:
            std::string m_name;
            bool m_isInitialized;
    };

} /* namespace arms */

#endif /* RESOURCE_H */

